package com.isoft.utils;

import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;

import java.io.File;
import java.io.IOException;

/**
 *
 * 方法内部首先通过XmlMapper创建了一个ObjectMapper实例，
 * 用于处理XML与Java对象之间的转换。
 * 接着使用readValue方法读取指定路径和文件名的XML文件，
 * 并将其反序列化为指定类型的Java对象。
 */

public class XmlUtils{
    public static ObjectMapper mapper=new XmlMapper();
    //XmlMapper类型的静态实例对象mapper，用于将XML格式的字符串转换为Java对象。
    public static  <T> T parseXml(String filePath,String fileName,Class<T> classType){
        try{
            mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES,false);
            return mapper.readValue(new File(filePath+ File.separator+fileName),classType);
        }catch (IOException e){
            e.printStackTrace();
        }
        return null;
    }
}
